<!DOCTYPE html>
<html>
<head>
    <meta charset="UTF-8">
    <title>组件嵌套</title>
</head>
<script type="text/javascript" src="../js/vue.js"></script>
    <!--
        
    -->
    <body>
        <div id="root">

        </div>
    </body>

        <script type="text/javascript">
            Vue.config.productionTip = false //设置为 false 以阻止 vue 在启动时生成生产提示。
            
            //定义student组件
            const student = Vue.extend({
                template:`
                <div>
                    <h2>学生名称：{{studentName}}</h2>
                    <h2>学生年龄：{{studentAge}}</h2>
                </div>
                `,
                data(){
                    return {
                        studentName:'张三',
                        studentAge:'18'
                    }
                }
            });
            
            //定义school组件
            const school = Vue.extend({
                template:`
                <div>
                    <h2>学校名称：{{schoolName}}</h2>
                    <h2>学校地址：{{schoolAddress}}</h2>
                    <hr/>
                    <student></student>
                </div>
                `,
                data(){
                    return{
                        schoolName:'广西科技师范学院',
                        schoolAddress:'广西省来宾市铁北大道966号'
                    }
                },
                //注册组件（局部）
                components:{
                    student
                }
            });

            //定义hello组件
            const hello = Vue.extend({
                template:`
                <div>
                    <h1>你好啊！{{name}}</h1>
                </div>
                `,
                data(){
                    return {
                        name:'小宝'
                    }
                }
            });

            //定义app组件
            const app = Vue.extend({
                template:`
                <div>
                    <hello></hello>
                    <school></school>
                </div>
                `,
                components:{
                    school:school,
                    hello:hello
                }
            });

            //创建vm
            new Vue({
                template:'<app></app>',
                el:'#root',
                //注册组件（局部）
                components:{app:app}
            })
        </script>
    
</html>